package cn.stylefeng.guns.modular.quan.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;

/**
 * <p>
 * 
 * </p>
 *
 * @author Dong
 * @since 2023-10-31
 */
@TableName("t_coupon")
public class Coupon implements Serializable {

    private static final long serialVersionUID=1L;

      @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 企业
     */
    @TableField("company")
    private String company;

    /**
     * 账号
     */
    @TableField("account")
    private String account;

    /**
     * 优惠券名称
     */
    @TableField("coupon_name")
    private String couponName;

    /**
     * 优惠内容
     */
    @TableField("preferential_content")
    private String preferentialContent;

    /**
     * 详情
     */
    @TableField("detail")
    private String detail;

    /**
     * 适用地址
     */
    @TableField("general_address")
    private String generalAddress;

    /**
     * 总数量
     */
    @TableField("quantity")
    private Integer quantity;

    /**
     * 剩余数量
     */
    @TableField("remaining_quantity")
    private Integer remainingQuantity;

    /**
     * 有效期
     */
    @TableField("valid")
    private String valid;

    /**
     * 开始时间
     */
    @TableField("start_time")
    private Date startTime;

    /**
     * 结束时间
     */
    @TableField("end_time")
    private Date endTime;

    /**
     * 图片
     */
    @TableField("pic")
    private String pic;

    /**
     * 0 限总量    1 每日更新     2 跳外链
     */
    @TableField("type")
    private Integer type;

    /**
     * 当type = 2 时，填写外链地址
     */
    @TableField("external_link")
    private String externalLink;

    /**
     *  0  二维码      1 券码
     */
    @TableField("status")
    private Integer status;

    /**
     * 开始时间
     */
    @TableField("begin_time")
    private String beginTime;

    /**
     * 结束时间
     */
    @TableField("finish_time")
    private String finishTime;

    @TableField("is_delete")
    private Integer isDelete;

    /**
     * 创建时间
     */
      @TableField(value = "create_time", fill = FieldFill.INSERT)
    private Date createTime;

      @TableField(value = "update_time", fill = FieldFill.UPDATE)
    private Date updateTime;


    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getCompany() {
        return company;
    }

    public void setCompany(String company) {
        this.company = company;
    }

    public String getAccount() {
        return account;
    }

    public void setAccount(String account) {
        this.account = account;
    }

    public String getCouponName() {
        return couponName;
    }

    public void setCouponName(String couponName) {
        this.couponName = couponName;
    }

    public String getPreferentialContent() {
        return preferentialContent;
    }

    public void setPreferentialContent(String preferentialContent) {
        this.preferentialContent = preferentialContent;
    }

    public String getDetail() {
        return detail;
    }

    public void setDetail(String detail) {
        this.detail = detail;
    }

    public String getGeneralAddress() {
        return generalAddress;
    }

    public void setGeneralAddress(String generalAddress) {
        this.generalAddress = generalAddress;
    }

    public Integer getQuantity() {
        return quantity;
    }

    public void setQuantity(Integer quantity) {
        this.quantity = quantity;
    }

    public Integer getRemainingQuantity() {
        return remainingQuantity;
    }

    public void setRemainingQuantity(Integer remainingQuantity) {
        this.remainingQuantity = remainingQuantity;
    }

    public String getValid() {
        return valid;
    }

    public void setValid(String valid) {
        this.valid = valid;
    }

    public Date getStartTime() {
        return startTime;
    }

    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }

    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    public String getPic() {
        return pic;
    }

    public void setPic(String pic) {
        this.pic = pic;
    }

    public Integer getType() {
        return type;
    }

    public void setType(Integer type) {
        this.type = type;
    }

    public String getExternalLink() {
        return externalLink;
    }

    public void setExternalLink(String externalLink) {
        this.externalLink = externalLink;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public String getBeginTime() {
        return beginTime;
    }

    public void setBeginTime(String beginTime) {
        this.beginTime = beginTime;
    }

    public String getFinishTime() {
        return finishTime;
    }

    public void setFinishTime(String finishTime) {
        this.finishTime = finishTime;
    }

    public Integer getIsDelete() {
        return isDelete;
    }

    public void setIsDelete(Integer isDelete) {
        this.isDelete = isDelete;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    @Override
    public String toString() {
        return "Coupon{" +
        "id=" + id +
        ", company=" + company +
        ", account=" + account +
        ", couponName=" + couponName +
        ", preferentialContent=" + preferentialContent +
        ", detail=" + detail +
        ", generalAddress=" + generalAddress +
        ", quantity=" + quantity +
        ", remainingQuantity=" + remainingQuantity +
        ", valid=" + valid +
        ", startTime=" + startTime +
        ", endTime=" + endTime +
        ", pic=" + pic +
        ", type=" + type +
        ", externalLink=" + externalLink +
        ", status=" + status +
        ", beginTime=" + beginTime +
        ", finishTime=" + finishTime +
        ", isDelete=" + isDelete +
        ", createTime=" + createTime +
        ", updateTime=" + updateTime +
        "}";
    }
}
